// ==UserScript==
// @name                disponibilidad-libros
// @namespace           http://soraya.org/greasemonkey
// @description         Comprueba la disponibilidad de los libros
// @include             http://bencore.ugr.es*
// @include             http://biblioteca.ugr.es/*
// @include             http://localhost/*
// ==/UserScript==

GM_log('Buscando libro');
var h2 = document.getElementsByTagName('h2');
var a_nodes = new Array;
var anchors = new Array;
var resultado = new Array
for ( var secs = 0; secs < h2.length; secs ++ ) {
  var thisA = h2[secs].getElementsByTagName('a');
  a_nodes[secs] = thisA[0];
  anchors[secs] = thisA[0].getAttribute('href');
  GM_log('Anchor ' + secs + " " + anchors[secs]);
  
  GM_xmlhttpRequest({
    method: 'GET',
    url: anchors[secs],
    headers: {
        'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey',
        'Accept': 'application/atom+xml,application/xml,text/xml',
    },
    onload: function(responseDetails) {
	  var parser = new DOMParser();
  	  var dom = parser.parseFromString(responseDetails.responseText,"application/xml");
	  var estado = dom.getElementById('firstAvailableStatusInsertComponent');
	  //var estado = dom.getElementByClass('dpBibHoldingStatus');
	}
  });
  
  if (estado=='DISPONIBLE'){
    resultado[secs]=1;
  }
  else{
    resultado[secs]=0;
  }
}



for ( var secs = 0; secs < h2.length; secs ++ ) {
  var span = document.createElement('span');
  span.setAttribute('style','background:lightblue');
  if ( resultado[secs]==1 ) {
    var txt=document.createTextNode(' --> DISPONIBLE');
    span.appendChild(txt);
  }
  if ( resultado[secs]==0 ) {
    var txt=document.createTextNode(' --> NO DISPONIBLE');
    span.appendChild(txt);
  }
  a_nodes[secs].parentNode.insertBefore(span,a_nodes[secs].nextSibling);
}